<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<body>
Provides treatment of chords or harmonies.


<h2>Package Specification</h2>

<p>
This package provides functionality for chords (also called harmonies).
Chords are considered to be abstract entities, not just a set of notes
(although a set of notes may comprise a "realization" of a chord.
E.g. "C4 E4 G4 C5" is just one of the many realization of the C-major chord.

<p>
Many chord labeling systems are in use, corresponding to different
music styles, cultures, periods, schools etc. 
Here we are mainly concerned with common western music, such as 
classical, pop, rock, blues and jazz,
 although attempts are
made to lay the foundation of the treatment of
different kinds of chords (atonal, spectral, non-western...)
and to separate culturally specific aspects from fundamental aspects.

<p>
The central class to deal with chord-types is <code>ChordType</code>.
It represents a chord-type including alterations, but excluding root pitch
and bass pitch (in the case of inverted or "slash" chords).

<p>
The class <code>ChordTypeNotation</code> represents a commonly
used chordtype labeling in the form of a basic chord "kind" (type <code>String</code>)
plus zero or more alterations (type <code>ChordAlteration</code>, 
e.g. "7(#5)". 
Neither kind nor alterations are standardized, not even in musical practice.
The same chord could be notated as "dom7(#5)" or "7(+5)"...
 
<p>
The interface <code>ChordNotationStyle</code>
provides functionality to transform a <code>ChordType</code>
to a <code>ChordTypeNotation</code>. The actual conversions
are made by concrete classes implementing this interface,
each one capturing a notational style. 
<code>StandardNotationStyle</code> is used for 
standard notation and for conversion to MusicXML-notation, 
and <code>LilypondChordNotationStyle</code> is used for conversion
to Lilypond-style notation.

<p>
A <code>Chord</code> object represents a chord, with a root pitch 
(<code>Interval</code>), type (<code>ChordType</code>) and bass pitch
(<code>Interval</code>, possibly <code>null</code>).

<p>
Note about jazz: there is currently no provision for the
representation of scales.

<p>



<h2>Related Documentation</h2>


<!-- Put @see and @since tags down here. -->

</body>
</html>
